home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part1 / 901 < prev    next >
Encoding:
Text File  |  1996-08-06  |  4.0 KB  |  91 lines

  1. Path: gate.net!pslfl2-10
  2. From: bhutto@gate.net (William Hutto)
  3. Newsgroups: comp.edu,comp.lang.c,comp.lang.c++
  4. Subject: Re: C or C++ for a 14-year old?
  5. Date: 8 Jan 1996 07:42:59 GMT
  6. Organization: CyberGate, Inc.
  7. Message-ID: <4cqhu3$1quo@news.gate.net>
  8. References: <4b30ld$lp2$1@mhafc.production.compuserve.com> <w31V7MD4ED1aLz3@dexam.another.gun.de> <dschrage.23.152EBB70@indirect.com> <4cq6cr$t51@dub-news-svc-1.compuserve.com>
  9. NNTP-Posting-Host: pslfl2-10.gate.net
  10. X-Newsreader: News Xpress Version 1.0 Beta #4
  11.  
  12. In article <4cq6cr$t51@dub-news-svc-1.compuserve.com>,
  13.    JamesCurran@CIS.CompuServe.Com (James M. Curran) wrote:
  14. >dschrage@indirect.com (Dan Schrage) wrote:
  15. >
  16. >>Moreover, C is the 
  17. >>most practical language that one can learn, because it can do basically 
  18. >>anything, even system-level programming using a variety of toolkits (until 
  19. >>you get into hard-core assembler programming, which is where I am at now).
  20. >
  21. >    My choice would be C++, for two simple reasons:  With a porper string
  22. >classs, you eliminate the need for C's rather insane "string as an
  23. >array of really tiny integers" model, the #1 cause of trouble among
  24. >beginning C programmer.  In fact, with a standard class library that's
  25. >in any way competnet, you can virtually do with any pointers in your
  26. >code (the #2 cause of trouble).  And with new/delete with those rare
  27. >cases where you insist on having a pointer, you avoid the troble of
  28. >malloc/free (#3 cause of trouble...)
  29. >
  30.  
  31. What am I doing in this thread??? 
  32.  
  33.     I would recommend either BASIC or batch programming. Not for long 
  34. though. The first ideology of programming is setting down a list of 
  35. instructions for the system to carry out. When it comes to sequential flow, 
  36. BASIC or batch processing would be the easiest to learn in my opinion; and 
  37. with that learning comes the confidence of achievement, considering the 
  38. student has generated something useful. They could then go on to learn 
  39. conditional expressions and loops, and even subprograms. 
  40.     I think that BASIC has gotten too far away from it's original purpose 
  41. (and we all know what the acronym means). As a curriculum, I would expect it 
  42. to be very short in duration (no longer than a semester). *I* initially 
  43. learned with a BASIC interpreter. The beauty of the interpreter is the 
  44. interaction between student and computer. Very little understanding or 
  45. knowledge is required to start programming. I really rather think the 
  46. experience is even 'fun.'
  47.  
  48. 10 FOR I=1 TO 10
  49. 20 PRINT "YOUR NAME HERE"
  50. 30 NEXT I
  51. 40 END
  52.  
  53. RUN
  54.  
  55.     This *program* is very concise in implementation. I've taught a seven 
  56. year old this same type of construct with little effort.
  57.  
  58. int main(void) {
  59. int i;
  60.  
  61.     for(i=1; i<=10; i++)
  62.         puts("YOUR NAME HERE");
  63.     return 0;
  64. }
  65.  
  66.     This *program* requires considerably more explanation. Also, if this 
  67. is not a C *interpreter* the student needs to know something about compilation 
  68. and may even need to know about files and linking.
  69.  
  70.     The ultimate *destination* might be a commonly used/accepted language. 
  71. I went from BASIC to 6502 assembly language, 8086 assembly language, C, C++ 
  72. and then Pascal. When I got to Pascal I thought, "Oops, wrong way!" 
  73.     I almost wanted to say, start with assembler. Coming from assembler, I 
  74. really understand what's happening with C (pointers took me about 5 minutes to 
  75. understand). That is, I'm much more understanding of the efficiency of the C 
  76. language. With C++, it's somehow vague as to just what the compiler is going 
  77. to generate. I don't want to spend time learning the compiler's quirks. I'm 
  78. much more *in tune* with the physical or *real* aspects of *the machine* and 
  79. C++ is rather abstract. Although, on the other hand, C++ was a good lesson 
  80. for me in abstraction and it's benefits, and is superb for modeling the *real* 
  81. world as well as the GUI.
  82.     I think the point I would want to make is that these are issues that 
  83. concern those who are *experienced* in programming. "Don't bite off more than 
  84. you can chew" is a good analogy. 
  85.  
  86. There's my $1.00/50
  87.  
  88. Bill
  89.  
  90. "Whatcha got on?...Your mind?"
  91.